package com.wiloon.java8x.regx;

import java.util.regex.Matcher;
import java.util.regex.Pattern;


/**
 * Created with IntelliJ IDEA.
 * User: wiloon
 * Date: 8/19/12
 * Time: 10:39 AM
 */
public class RegxTest {
    public static void main(String[] args) {
        String pattern = "METER|latency";
        String s = "xxxxxxxxxxxxxxxxxxMETERxxxxxxxxxxxxxlatency";



        Pattern p = Pattern.compile(pattern);
        Matcher matcher = p.matcher(s);
        boolean match = matcher.find();
        System.out.println(match);
    }

    public void infozmimgfilter() {
        String pattern = "img.*?src=\"(.+?)\"";
        String s = "<img class=\"landscape\"   alt=\"\" src=\"http://images.infzm.com/medias/2013/0117/65348.jpeg@660x440\" />";

        Pattern p = Pattern.compile(pattern);
        Matcher matcher = p.matcher(s);
        boolean match = matcher.find();
        System.out.println(match);
        System.out.println(matcher.end());
        System.out.println(matcher.group(1));

    }

//    public static void fx678() {
//        TextFileReader tfr = new TextFileReader();
//        String content = tfr.read("/home/wiloon/tmp/fnews/news.txt");
//        String pattern;
//        pattern = "list_content01_titlel\"><a href=\"(.*?)\" target=\"_blank\">(.*?)</a>.*?list_content01_titler\">(.*?)</div>";
//        Pattern p = Pattern.compile(pattern);
//        Matcher matcher = p.matcher(content);
//        int index = 0;
//        int count = 0;
//        boolean match = matcher.find(index);
//
//        while (match) {
//            index = matcher.end();
//
//            String url = matcher.group(1);
//            System.out.println(url);
//            String news = matcher.group(2);
//            news = news.replace("&nbsp;", "");
//            System.out.println(news);
//            String date = matcher.group(3);
//            System.out.println(date);
//            match = matcher.find(index);
//            count++;
//        }
//        System.out.println(count);
//
//    }


//    public static void infozmFilter() {
//        TextFileReader tfr = new TextFileReader();
//        String content = tfr.read("/home/wiloon/tmp/rssLab/infozm0909.html");
//        String pattern = "文章内容.*(<section id=\"articleContent\">.*/section>)";
//        Pattern p = Pattern.compile(pattern);
//        Matcher matcher = p.matcher(content);
//        boolean match = matcher.find();
//
//        System.out.println(match);
//        System.out.println(matcher.group(1));
//    }
//
//    public static void ft() {
//        TextFileReader tfr = new TextFileReader();
//        String content = tfr.read("/home/wiloon/tmp/rssLab/ft.html");
//        String pattern = "id=\"bodytext\".*?((<p>.*?</p>){1,}(<div>.*</div>){0,1}(<p>.*?</p>){1,}).*?</div>";
//        Pattern p = Pattern.compile(pattern);
//        Matcher matcher = p.matcher(content);
//        boolean match = matcher.find();
//
//        System.out.println(match);
//        System.out.println(matcher.group(1));
//    }
//
//    public static void dw() {
//        TextFileReader tfr = new TextFileReader();
//        String content = tfr.read("/home/wiloon/tmp/rssLab/infozm80260.html");
//        String pattern = "文章内容.*(<section.*/section>)";
//        Pattern p = Pattern.compile(pattern);
//        Matcher matcher = p.matcher(content);
//        boolean match = matcher.find();
//
//        System.out.println(match);
//        System.out.println(matcher.group(1));
//    }


    public static void test10() {
        String s = "http://www.blogcdn.com/cn.engadget.com/media/2012/08/titlep8300291.jpg";
        String pattern = ".*(mf\\.gif)$";
        Pattern p = Pattern.compile(pattern);
        Matcher matcher = p.matcher(s);
        boolean match = matcher.find();
        System.out.println(match);

    }

    public static void test9() {
        String s = "fdhgdfja.jpg";
        s = "asdfasdf.gif";


        s = "asdfawefasdf.jpgsdfasdf";
        s = "asdewfsdf.jpeg";
        s = "asdfasdf.png";
        s = "asdfasdf.gif";
        s = "fdhgdfja.jpg";
        String tmp = s.toLowerCase();
        String pattern = ".*(jpg|gif|png|jpeg)$";
        Pattern p = Pattern.compile(pattern);
        Matcher matcher = p.matcher(tmp);
        boolean b = matcher.find();
        System.out.println(b);

    }

    public static void test8() {
        String s = "imgfgsfdfg'111'imgasdfqweg'2222imgerwef'333'imgasdfasdf'444'";
        s = "imgtttt'111'imgtttt'222'";
        String pattern = "img.*?'(.+?)'";
        Pattern p = Pattern.compile(pattern);
        Matcher matcher = p.matcher(s);
        boolean find = matcher.find(0);
        while (find) {
            String imgUrl = matcher.group(1);
            System.out.println(imgUrl);

            int index = matcher.end();
            find = matcher.find(index);
            System.out.println(find);
            System.out.println(index);


        }
    }

    public static void test36kr() {
        String s = "<p><a href=\"http://www.36kr.com/p/148466.html/%e6%9c%aa%e5%91%bd%e5%90%8d-69\" rel=\"attachment wp-att-148467\"><img title=\"未命名\" src=\"http://img01.36krcnd.com/wp-content/uploads/2012/08/%E6%9C%AA%E5%91%BD%E5%90%8D10.jpg\" alt=\"\" width=\"566\" height=\"358\"></a><br> 继周五法院判决三星侵权之后，苹果没有拖泥带水，立马向法院<a href=\"http://www.theverge.com/2012/8/27/3272154/apple-identifies-samsung-products-injunction-after-verdict\" rel=\"external nofollow\">提交了一份申请禁售名单</a>，其中包括三星的8款在美销售的智能手机。苹果在文件中详细列举了这些手机具体侵犯了苹果的哪些专利。<br> <a href=\"http://www.36kr.com/p/148466.html/screen_shot_2012-08-27_at_11-17-15_am\" rel=\"attachment wp-att-148468\"><img title=\"Screen_Shot_2012-08-27_at_11.17.15_AM\" src=\"http://img02.36krcnd.com/wp-content/uploads/2012/08/Screen_Shot_2012-08-27_at_11.17.15_AM.png\" alt=\"\" width=\"560\" height=\"257\"></a></p><p>由于此前已经有了侵权判决，苹果只需向法院证实若不禁售这些产品将会对苹果造成无法挽回的伤害。虽然目前的形势对苹果有利，但是是否能达成禁售诉求现在来说还为时尚早。</p><p>与此同时，三星的日子就不怎么好过了。在韩国证券交易所周一的交易中，三星股价大幅下跌7.5%，创下自2008年底全球经济进入衰退周期以来的最大单日跌幅。一天之内，三星市值降低了约123亿美元。三星在这场诉讼中输掉的，可能远不只是10亿赔款这么简单。</p><div>除非注明，本站文章均为原创或编译，转载请注明： 文章来自<a rel=\"bookmark\" title=\"不平静的一天：苹果申请禁售8款三星手机，三星市值蒸发123亿美元\" href=\"http://www.36kr.com/p/148466.html\">36氪</a></div><hr>来微信加36氪为好友吧，打开微信“<abbr title=\"Add a Friend\">添加朋友</abbr>”-&gt;<abbr title=\"Add by ID\">按号码查找</abbr>，然后输入“<abbr title=\"wow36kr\">36氪</abbr>”添加好友。[<a title=\"微信扫描二维码添加好友\" href=\"http://img01.36krcnd.com/wp-content/uploads/2012/08/qrcode_for_wxid_1970509702912.jpg\">二维码</a>]<img width=\"1\" height=\"1\" src=\"http://feed.36kr.com/c/33346/f/566026/s/22cb38df/mf.gif\" border=\"0\"><div><p>您可能感兴趣的文章：</p><ul><li><a href=\"http://www.36kr.com/p/148736.html\">蓝牙技术联盟发布健身类传感器新标准，为下一代传感器铺路</a></li><li><a href=\"http://www.36kr.com/p/148742.html\">云端的会计：初创企业FreshBooks发布iPhone应用，帮助用户实时进销存管理</a></li><li><a href=\"http://www.36kr.com/p/148749.html\">91无线发布2012年第二季度的《移动应用发展趋势报告（Android版）》</a></li><li><a href=\"http://www.36kr.com/p/148765.html\">月黑风偏高，百度与360动刀 — 对昨夜“3B大战”的简单回顾</a></li><li><a href=\"http://www.36kr.com/p/148763.html\">详述三星侵犯苹果的6项专利</a></li></ul></div><br><br><a href=\"http://da.feedsportal.com/r/139263579768/u/31/f/566026/c/33346/s/22cb38df/a2.htm\"><img src=\"http://da.feedsportal.com/r/139263579768/u/31/f/566026/c/33346/s/22cb38df/a2.img\" border=\"0\"></a><img width=\"1\" height=\"1\" src=\"http://pi.feedsportal.com/r/139263579768/u/31/f/566026/c/33346/s/22cb38df/a2t.img\" border=\"0\">";
        s = "<img title=\"未命名\" src=\"http://img01.36krcnd.com/wp-content/uploads/2012/08/%E6%9C%AA%E5%91%BD%E5%90%8D10.jpg\" alt=\"\" width=\"566\" height=\"358\"></a><br> 继周五法院判决三星侵权之后，苹果没有拖泥带水，立马向法院<a href=\"http://www.theverge.com/2012/8/27/3272154/apple-identifies-samsung-products-injunction-after-verdict\" rel=\"external nofollow\">提交了一份申请禁售名单</a>，其中包括三星的8款在美销售的智能手机。苹果在文件中详细列举了这些手机具体侵犯了苹果的哪些专利。<br> <a href=\"http://www.36kr.com/p/148466.html/screen_shot_2012-08-27_at_11-17-15_am\" rel=\"attachment wp-att-148468\"><img title=\"Screen_Shot_2012-08-27_at_11.17.15_AM\" src=\"http://img02.36krcnd.com/wp-content/uploads/2012/08/Screen_Shot_2012-08-27_at_11.17.15_AM.png\" alt=\"\" width=\"560\" height=\"257\"></a></p><p>由于此前已经有了侵权判决，苹果只需向法院证实若不禁售这些产品将会对苹果造成无法挽回的伤害。虽然目前的形势对苹果有利，但是是否能达成禁售诉求现在来说还为时尚早。</p><p>与此同时，三星的日子就不怎么好过了。在韩国证券交易所周一的交易中，三星股价大幅下跌7.5%，创下自2008年底全球经济进入衰退周期以来的最大单日跌幅。一天之内，三星市值降低了约123亿美元。三星在这场诉讼中输掉的，可能远不只是10亿赔款这么简单。</p><div>除非注明，本站文章均为原创或编译，转载请注明： 文章来自<a rel=\"bookmark\" title=\"不平静的一天：苹果申请禁售8款三星手机，三星市值蒸发123亿美元\" href=\"http://www.36kr.com/p/148466.html\">36氪</a></div><hr>来微信加36氪为好友吧，打开微信“<abbr title=\"Add a Friend\">添加朋友</abbr>”-&gt;<abbr title=\"Add by ID\">按号码查找</abbr>，然后输入“<abbr title=\"wow36kr\">36氪</abbr>”添加好友。[<a title=\"微信扫描二维码添加好友\" href=\"http://img01.36krcnd.com/wp-content/uploads/2012/08/qrcode_for_wxid_1970509702912.jpg\">二维码</a>]<img width=\"1\" height=\"1\" src=\"http://feed.36kr.com/c/33346/f/566026/s/22cb38df/mf.gif\" border=\"0\"><div><p>您可能感兴趣的文章：</p><ul><li><a href=\"http://www.36kr.com/p/148736.html\">蓝牙技术联盟发布健身类传感器新标准，为下一代传感器铺路</a></li><li><a href=\"http://www.36kr.com/p/148742.html\">云端的会计：初创企业FreshBooks发布iPhone应用，帮助用户实时进销存管理</a></li><li><a href=\"http://www.36kr.com/p/148749.html\">91无线发布2012年第二季度的《移动应用发展趋势报告（Android版）》</a></li><li><a href=\"http://www.36kr.com/p/148765.html\">月黑风偏高，百度与360动刀 — 对昨夜“3B大战”的简单回顾</a></li><li><a href=\"http://www.36kr.com/p/148763.html\">详述三星侵犯苹果的6项专利</a></li></ul></div><br><br><a href=\"http://da.feedsportal.com/r/139263579768/u/31/f/566026/c/33346/s/22cb38df/a2.htm\"><img src=\"http://da.feedsportal.com/r/139263579768/u/31/f/566026/c/33346/s/22cb38df/a2.img\" border=\"0\"></a><img width=\"1\" height=\"1\" src=\"http://pi.feedsportal.com/r/139263579768/u/31/f/566026/c/33346/s/22cb38df/a2t.img\" border=\"0\">";

        String pattern = "img.*src=\"(.+?)\"";
        Pattern p = Pattern.compile(pattern);
        Matcher matcher = p.matcher(s);
        boolean find = matcher.find(0);
        while (find) {
            String imgUrl = matcher.group(1);
            System.out.println(imgUrl);

            int index = matcher.end();
            find = matcher.find(0);
            System.out.println(find);
            System.out.println(index);


        }
    }

    public static void testWidthHeight() {
        String s = "width='111' width=1px   width=111px height=111px width=1111px width='111px' width=\"111px\" width:111px width:'111px' width:\"111px\" ";
        String pattern = "(width|height)(:|=)('|\"){0,1}[0-9]{1,4}px('|\"){0,1}";
        pattern = "(width|height)(=|:)('|\"){0,1}[0-9]{1,4}(px){0,1}('|\"){0,1}";
        Pattern p = Pattern.compile(pattern);
        Matcher matcher = p.matcher(s);
        s = matcher.replaceAll("");
        System.out.println(s);
    }

    public static void test7() {
        Pattern pattern = Pattern.compile("src=\"(.+?)\"");
        Matcher matcher = pattern.matcher("asdfasdfasdf<img src=\"index1.html\">asdfasdfasdf<img src=\"index2.html\">");
        if (matcher.find()) {
            System.out.println(matcher.groupCount());

            System.out.println(matcher.group(0));

        }
        if (matcher.find(matcher.end())) {
            System.out.println(matcher.groupCount());

            System.out.println(matcher.group(1));

        }
    }

    public static void test6() {
        String str = "<p>分类: <a href=\"http://cn.engadget.com/category/news/\" rel=\"tag\">科技新闻</a></p><div style=\"text-align:center\"><a href=\"http://www.engadget.com/2012/08/03/slips-liquid-repeller-is-inspired-by-carnivorous-plants-enemy-t/\"><img alt=\"SLIPS synthetic liquid repeller is inspired by carnivorous, enemy to insects and graffiti artists alike\" src=\"http://www.blogcdn.com/www.engadget.com/media/2012/08/harvard-8122011-11-2523-35-30600.jpg\" style=\"margin:4px\"></a><br></div>哈佛大学的研发团队希望打造一种完美的排斥液体及固体的涂层材料，于是他们向植物寻找灵感。这次学习的对象是猪笼草，熟悉猪笼草的人会知道，它会吸引蚂蚁和蜘蛛等过来并以其非常光滑的表面让这些昆虫掉入陷阱。受其启发，他们研发了 SLIPS 材料。这是一种自修复的光滑液体注入式多孔表面，将研发的润滑液注入具有纳米微结构的材料中，单从字面上还无法理解其排斥能力，实际效果会如何呢？我们来到了他们的实验室一窥究竟。<br><br>它能够抵御大多数的液体，水滴可以轻松滑落、油腻的发动机油也不在话下；他们给我们展示了覆盖这种 SLIPS 涂层的铝合金面板和玻璃片，事实证明只要轻轻抬起表面，让其有一个倾斜度，他们就会轻松滑落。最大的挑战来自于黑色喷漆，相对于没有采用 SLIPS 的表面，新涂层甚至可以让黑漆滑落。早前，哈佛的这个团队已经发表了相关的论文。他们指出这种 SLIPS 涂层材料可以抵御并排斥多种液体和固体，甚至可以排斥冰和抗菌；同时如果有一些刮痕还能自行修复。你还可以看到，SLIPS 就像猪笼草那样，可以滑倒蚂蚁，跳转一段影片可以观看。需要指出的是，用来演示的蚂蚁没有受到任何伤害，当然它也不是故意滑倒的。<p><br><p><a href=\"http://cn.engadget.com/2012/08/06/slips-liquid-repeller-is-inspired-by-carnivorous-plants-enemy-t/\" rel=\"bookmark\">继续阅读全文 <em>SLIPS 自修复超级光滑涂层，几乎可以抵御所有液体（视频）</em></a></p><h6 style=\"clear:both;padding:8px 0 0 0;height:2px;font-size:1px;border:0;margin:0;padding:0\"></h6><a href=\"http://www.engadget.com/2012/08/03/slips-liquid-repeller-is-inspired-by-carnivorous-plants-enemy-t/\">引用来源</a> | <a href=\"http://wyss.harvard.edu/viewpage/316/\">引用来源</a> | <a href=\"http://cn.engadget.com/2012/08/06/slips-liquid-repeller-is-inspired-by-carnivorous-plants-enemy-t/\" rel=\"bookmark\" title=\"Permanent link to this entry\">此文章网址</a> | <a href=\"http://cn.engadget.com/forward/20293812/\" title=\"Send this entry to a friend via email\">转寄此文章</a> | <a href=\"http://cn.engadget.com/2012/08/06/slips-liquid-repeller-is-inspired-by-carnivorous-plants-enemy-t/#comments\" title=\"View reader comments on this entry\">回应</a><hr size=\"1\"></p>";

        Pattern pattern = Pattern.compile("src=\"(.+?)\"");
        //Matcher matcher = pattern.matcher("<p>分类: <a href=\"http://cn.engadget.com/category/news/\" rel=\"tag\">科技新闻</a></p><div style=\"text-align:center\"><a href=\"http://www.engadget.com/2012/08/03/slips-liquid-repeller-is-inspired-by-carnivorous-plants-enemy-t/\"><img alt=\"SLIPS synthetic liquid repeller is inspired by carnivorous, enemy to insects and graffiti artists alike\" src=\"http://www.blogcdn.com/www.engadget.com/media/2012/08/harvard-8122011-11-2523-35-30600.jpg\" style=\"margin:4px\"></a><br></div>哈佛大学的研发团队希望打造一种完美的排斥液体及固体的涂层材料，于是他们向植物寻找灵感。这次学习的对象是猪笼草，熟悉猪笼草的人会知道，它会吸引蚂蚁和蜘蛛等过来并以其非常光滑的表面让这些昆虫掉入陷阱。受其启发，他们研发了 SLIPS 材料。这是一种自修复的光滑液体注入式多孔表面，将研发的润滑液注入具有纳米微结构的材料中，单从字面上还无法理解其排斥能力，实际效果会如何呢？我们来到了他们的实验室一窥究竟。<br><br>它能够抵御大多数的液体，水滴可以轻松滑落、油腻的发动机油也不在话下；他们给我们展示了覆盖这种 SLIPS 涂层的铝合金面板和玻璃片，事实证明只要轻轻抬起表面，让其有一个倾斜度，他们就会轻松滑落。最大的挑战来自于黑色喷漆，相对于没有采用 SLIPS 的表面，新涂层甚至可以让黑漆滑落。早前，哈佛的这个团队已经发表了相关的论文。他们指出这种 SLIPS 涂层材料可以抵御并排斥多种液体和固体，甚至可以排斥冰和抗菌；同时如果有一些刮痕还能自行修复。你还可以看到，SLIPS 就像猪笼草那样，可以滑倒蚂蚁，跳转一段影片可以观看。需要指出的是，用来演示的蚂蚁没有受到任何伤害，当然它也不是故意滑倒的。<p><br><p><a href=\"http://cn.engadget.com/2012/08/06/slips-liquid-repeller-is-inspired-by-carnivorous-plants-enemy-t/\" rel=\"bookmark\">继续阅读全文 <em>SLIPS 自修复超级光滑涂层，几乎可以抵御所有液体（视频）</em></a></p><h6 style=\"clear:both;padding:8px 0 0 0;height:2px;font-size:1px;border:0;margin:0;padding:0\"></h6><a href=\"http://www.engadget.com/2012/08/03/slips-liquid-repeller-is-inspired-by-carnivorous-plants-enemy-t/\">引用来源</a> | <a href=\"http://wyss.harvard.edu/viewpage/316/\">引用来源</a> | <a href=\"http://cn.engadget.com/2012/08/06/slips-liquid-repeller-is-inspired-by-carnivorous-plants-enemy-t/\" rel=\"bookmark\" title=\"Permanent link to this entry\">此文章网址</a> | <a href=\"http://cn.engadget.com/forward/20293812/\" title=\"Send this entry to a friend via email\">转寄此文章</a> | <a href=\"http://cn.engadget.com/2012/08/06/slips-liquid-repeller-is-inspired-by-carnivorous-plants-enemy-t/#comments\" title=\"View reader comments on this entry\">回应</a><hr size=\"1\"></p>");
        Matcher matcher = pattern.matcher(str);
        boolean b = matcher.matches();
        System.out.println(b);
        if (matcher.find())
            System.out.println(matcher.group(1));
    }

    public static void test5() {
        Pattern pattern = Pattern.compile("href=\"(.+?)\"");
        Matcher matcher = pattern.matcher("<a href=\"index.html\">主页</a>");
        if (matcher.find())
            System.out.println(matcher.group(1));
    }


    public static void test4() {
        Pattern pattern = Pattern.compile("<.*?>");
        Matcher matcher = pattern.matcher("<a href=\"index.html\">主页</a>");
        System.out.println(matcher.replaceAll(""));
    }

    public static void test3() {
        Pattern pattern = Pattern.compile("<.*>");
        Matcher matcher = pattern.matcher("<a href=\"index.html\">主页[color=red]</a[/color]");
        System.out.println(matcher.replaceAll(""));
    }

    public static void test2() {

        Pattern pattern = Pattern.compile("<.*>");
        Matcher matcher = pattern.matcher("<a href=\"index.html\">主页</a>");
        System.out.println(matcher.replaceAll(""));
    }


    public static void test1() {
        Pattern pattern = Pattern.compile("<.+?>", Pattern.DOTALL);
        Matcher matcher = pattern.matcher("<a href=\"index.html \">主页</a>");
        String string = matcher.replaceAll("");
        System.out.println(string);
    }

    public static void test0() {
        //href="(.+?)"
        //<img alt="SLIPS synthetic liquid repeller is inspired by carnivorous, enemy to insects and graffiti artists alike"
        // src="http://www.blogcdn.com/www.engadget.com/media/2012/08/harvard-8122011-11-2523-35-30600.jpg" style="margin:4px">
        String pattern = "img.*src=\"(.+?)\"";
        String str = "<p>分类: <a href=\"http://cn.engadget.com/category/news/\" rel=\"tag\">科技新闻</a></p><div style=\"text-align:center\"><a href=\"http://www.engadget.com/2012/08/03/slips-liquid-repeller-is-inspired-by-carnivorous-plants-enemy-t/\"><img alt=\"SLIPS synthetic liquid repeller is inspired by carnivorous, enemy to insects and graffiti artists alike\" src=\"http://www.blogcdn.com/www.engadget.com/media/2012/08/harvard-8122011-11-2523-35-30600.jpg\" style=\"margin:4px\"></a><br></div>哈佛大学的研发团队希望打造一种完美的排斥液体及固体的涂层材料，于是他们向植物寻找灵感。这次学习的对象是猪笼草，熟悉猪笼草的人会知道，它会吸引蚂蚁和蜘蛛等过来并以其非常光滑的表面让这些昆虫掉入陷阱。受其启发，他们研发了 SLIPS 材料。这是一种自修复的光滑液体注入式多孔表面，将研发的润滑液注入具有纳米微结构的材料中，单从字面上还无法理解其排斥能力，实际效果会如何呢？我们来到了他们的实验室一窥究竟。<br><br>它能够抵御大多数的液体，水滴可以轻松滑落、油腻的发动机油也不在话下；他们给我们展示了覆盖这种 SLIPS 涂层的铝合金面板和玻璃片，事实证明只要轻轻抬起表面，让其有一个倾斜度，他们就会轻松滑落。最大的挑战来自于黑色喷漆，相对于没有采用 SLIPS 的表面，新涂层甚至可以让黑漆滑落。早前，哈佛的这个团队已经发表了相关的论文。他们指出这种 SLIPS 涂层材料可以抵御并排斥多种液体和固体，甚至可以排斥冰和抗菌；同时如果有一些刮痕还能自行修复。你还可以看到，SLIPS 就像猪笼草那样，可以滑倒蚂蚁，跳转一段影片可以观看。需要指出的是，用来演示的蚂蚁没有受到任何伤害，当然它也不是故意滑倒的。<p><br><p><a href=\"http://cn.engadget.com/2012/08/06/slips-liquid-repeller-is-inspired-by-carnivorous-plants-enemy-t/\" rel=\"bookmark\">继续阅读全文 <em>SLIPS 自修复超级光滑涂层，几乎可以抵御所有液体（视频）</em></a></p><h6 style=\"clear:both;padding:8px 0 0 0;height:2px;font-size:1px;border:0;margin:0;padding:0\"></h6><a href=\"http://www.engadget.com/2012/08/03/slips-liquid-repeller-is-inspired-by-carnivorous-plants-enemy-t/\">引用来源</a> | <a href=\"http://wyss.harvard.edu/viewpage/316/\">引用来源</a> | <a href=\"http://cn.engadget.com/2012/08/06/slips-liquid-repeller-is-inspired-by-carnivorous-plants-enemy-t/\" rel=\"bookmark\" title=\"Permanent link to this entry\">此文章网址</a> | <a href=\"http://cn.engadget.com/forward/20293812/\" title=\"Send this entry to a friend via email\">转寄此文章</a> | <a href=\"http://cn.engadget.com/2012/08/06/slips-liquid-repeller-is-inspired-by-carnivorous-plants-enemy-t/#comments\" title=\"View reader comments on this entry\">回应</a><hr size=\"1\"></p>";
        System.out.println("str length:" + str.length());

        Pattern p = Pattern.compile(pattern);
        //Pattern p = Pattern.compile("src=\"(.+?)\"");
        Matcher matcher = p.matcher(str);
        boolean b = matcher.find();
        System.out.println("find:" + b);
        System.out.println("grout count:" + matcher.groupCount());
        System.out.println("region start:" + matcher.regionStart());
        System.out.println("region end:" + matcher.regionEnd());
        System.out.println("start" + matcher.start());
        System.out.println("end" + matcher.end());

        int index = matcher.end();
        index = matcher.end(0);
        System.out.println("index:" + index);
        System.out.println(str.substring(index - 10, index));

        //System.out.println(str.substring(index, index + 10));
        System.out.println("to string:" + matcher.toString());
        System.out.println(matcher.group(1));
    }


}
